$mat-sort-header-arrow-margin: 6px;
$mat-sort-header-arrow-container-size: 12px;
$mat-sort-header-arrow-stem-size: 10px;
$mat-sort-header-arrow-pointer-length: 6px;
$mat-sort-header-arrow-thickness: 2px;
$mat-sort-header-arrow-transition: 225ms cubic-bezier(0.4, 0, 0.2, 1);

.mat-sort-header-container {
  display: flex;
  cursor: pointer;

  .mat-sort-header-disabled & {
    cursor: default;
  }
}

.mat-sort-header-position-before {
  flex-direction: row-reverse;
}

.mat-sort-header-button {
  border: none;
  background: 0 0;
  display: flex;
  align-items: center;
  padding: 0;
  cursor: inherit;
  outline: 0;
  font: inherit;
  color: currentColor;
}

.mat-sort-header-arrow {
  height: $mat-sort-header-arrow-container-size;
  width: $mat-sort-header-arrow-container-size;
  min-width: $mat-sort-header-arrow-container-size;
  margin: 0 0 0 $mat-sort-header-arrow-margin;
  position: relative;
  display: flex;

  .mat-sort-header-position-before & {
    margin: 0 $mat-sort-header-arrow-margin 0 0;
  }
}

.mat-sort-header-stem {
  background: currentColor;
  height: $mat-sort-header-arrow-stem-size;
  width: $mat-sort-header-arrow-thickness;
  margin: auto;
  display: flex;
  align-items: center;
}

.mat-sort-header-indicator {
  width: 100%;
  height: $mat-sort-header-arrow-thickness;
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  transition: $mat-sort-header-arrow-transition;
}

.mat-sort-header-pointer-middle {
  margin: auto;
  height: $mat-sort-header-arrow-thickness;
  width: $mat-sort-header-arrow-thickness;
  background: currentColor;
  transform: rotate(45deg);
}

.mat-sort-header-pointer-left,
.mat-sort-header-pointer-right {
  background: currentColor;
  width: $mat-sort-header-arrow-pointer-length;
  height: $mat-sort-header-arrow-thickness;
  transition: $mat-sort-header-arrow-transition;
  position: absolute;
  top: 0;
}

.mat-sort-header-pointer-left {
  transform-origin: right;
  left: 0;
}

.mat-sort-header-pointer-right {
  transform-origin: left;
  right: 0;
}
